技術問答
技術文章
iT 徵才
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2023 iThome 鐵人賽
DAY
18
0
Mobile Development
依然無法成為釣魚大師也要努力摸魚!!辣個吃魚神器 APP 第二彈
系列 第
18
篇
【Day 18】 從開源範例中學習: aws-amplify
15th鐵人賽
aws
amplify
ios
釣魚術
二坪山小弱砲
團隊
我在鐵人賽烙賽、也在外木山裸泳◑ω◐
2023-09-19 23:57:05
529 瀏覽
分享至
前言
自覺 code 要改乾淨一些
需要參考別人的 coding style
說明
因為覺得程式碼沒寫得很乾淨,所以尋找開源專案來研讀。
本於修改集郵冊相簿功能,挑選性質相近的 [aws-amplify / amplify-ios-samples]
(
https://github.com/aws-amplify/amplify-ios-samples
)
雖然這個專案已經在今年六月底(大約三個多月前)被歸檔了
這個範例中使用了三種 Amplify 元件
Auth
API
Storage
他的說明中放的是
Photo-Sharing-Sample
解析
README.md
去沒光顧過的餐廳用餐的時候,就是先看作者擺在門口的告示牌;看開源專案的起手式,當然是看看作者擺在
README.md
的內容,一來可以快速接收作者想傳達的訊息(這程式碼可以做些什麼、特色),二來可以用心感受作者想要傳遞的心情(他引以為傲的內容、個性和想法理念,就算不實用那至少也要好玩!)
Auth
首先有做了登入/註冊/驗證碼/已登入畫面;So do I
Photo-Sharing-Sample/PhotoSharing/PhotoSharingApp.swift
因為這邊都只是 View (單純元件的堆疊、畫面的排版,不難理解,所以不贅述)
然後他有在登入後的 UI 中 (UserProfileBarView.swift),實作 SignOut ... 我沒有
Photo-Sharing-Sample/PhotoSharing/Views/SubViews/UserProfileBarView.swift
是
菜單
裡面的
文字塊按鈕
Storage
有 Post 照片、更新大頭照、貼文 ⋯⋯
來了來了,重點來了!
切進去欣賞他的程式碼!!!
PostEditorViewModel.swift
在 ViewModel 中直接綁函式呼叫
不需要另外搞一個 Controller ... 請見
Stop using MVVM for SwiftUI
說明
原始碼研究中 ...
https://github.com/aws-amplify/amplify-ios-samples/blob/main/Photo-Sharing-Sample/PhotoSharing/ViewModels/PostEditorViewModel.swift
留言
追蹤
檢舉
上一篇
【Day 17】 設計集郵冊的圖床
下一篇
【Day 19】 理解關聯式資料:設計使用者相簿的資料表
系列文
依然無法成為釣魚大師也要努力摸魚!!辣個吃魚神器 APP 第二彈
共
33
篇
目錄
RSS系列文
訂閱系列文
8
人訂閱
29
【Day 29】 降低傳輸成本的設計
30
【Day 30】 郵票計數器的問題
31
【Day 31】加入 Core ML
32
【Day 32】初探 AWS Amplify Predictions
33
【Day 33】沉底掉組
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
19859
篇
完賽人數
528
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
17th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
急! 筆電上的chrome書籤,覆蓋掉了原本桌電上的chrome書籤 (解決有獎)
Client-Server 轉 Java Web 問題請益
如何透過GPO新增機碼
bios 電池蓋板
電腦測試出現的怪現象
泰國 tplink NX510V IPSEC無法連
考古 - 徵求Paloalto PA500 , PA200最新版本的FIRMWARE
熱門回答
急! 筆電上的chrome書籤,覆蓋掉了原本桌電上的chrome書籤 (解決有獎)
泰國 tplink NX510V IPSEC無法連
電腦測試出現的怪現象
Client-Server 轉 Java Web 問題請益
如何透過GPO新增機碼
熱門文章
【C++學習筆記】02《從資料型態到命名規則》
採購管理是什麼?新手必懂的基本流程與重點
我如何用 Claude 將故障調查時間從 2 小時縮短到 15 分鐘
產品生命週期管理(PLM)是什麼?一次搞懂五階段流程與管理要點
AI 去人聲工具實測與選擇指南:從原理到實務應用
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}